Skip to content

Conversation

@tommartensen
Copy link
Contributor

@tommartensen tommartensen commented Apr 2, 2025

With reusable WorkflowTemplates, we can refactor duplicated code between flavors, for example the wait step, or the openshift-perf-scale workflow CR.
It is also very useful if we want to make the infra flavors more flexible, e.g. by combining an empty cluster with a demo-ifyer + data seeder, as such a part could be implemented through a WorkflowTemplate with DRY principles in mind.

Other things this PR achieves:

test-simulate is an example workflow that uses templates. During e2e testing for infractl logs, I observed that pod names are different for template referenced steps, which I fixed in the determinePodName method.

Validation

besides e2e tests, I deployed 5965462 to https://dev.infra.rox.systems/. Feel free to play around with it.

@tommartensen tommartensen self-assigned this Apr 2, 2025
@rhacs-bot
Copy link
Contributor

rhacs-bot commented Apr 2, 2025

A single node development cluster (infra-pr-1553) was allocated in production infra for this PR.

CI will attempt to deploy quay.io/rhacs-eng/infra-server: to it.

🔌 You can connect to this cluster with:

gcloud container clusters get-credentials infra-pr-1553 --zone us-central1-a --project acs-team-temp-dev

🛠️ And pull infractl from the deployed dev infra-server with:

nohup kubectl -n infra port-forward svc/infra-server-service 8443:8443 &
make pull-infractl-from-dev-server

🚲 You can then use the dev infra instance e.g.:

bin/infractl -k -e localhost:8443 whoami

⚠️ Any clusters that you start using your dev infra instance should have a lifespan shorter then the development cluster instance. Otherwise they will not be destroyed when the dev infra instance ceases to exist when the development cluster is deleted. ⚠️

Further Development

☕ If you make changes, you can commit and push and CI will take care of updating the development cluster.

🚀 If you only modify configuration (chart/infra-server/configuration) or templates (chart/infra-server/{static,templates}), you can get a faster update with:

make helm-deploy

Logs

Logs for the development infra depending on your @redhat.com authuser:

Or:

kubectl -n infra logs -l app=infra-server --tail=1 -f

@tommartensen tommartensen changed the title spike: implement workflowtemplate ROX-15718: Prepare usage of WorkflowTemplates in flavors Oct 16, 2025
@tommartensen tommartensen marked this pull request as ready for review October 16, 2025 11:10
@tommartensen tommartensen requested a review from a team as a code owner October 16, 2025 11:10
Copy link
Contributor

@davdhacs davdhacs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 this looks great

@davdhacs
Copy link
Contributor

  • successful simulate workflow ran, and aks and gke clusters created+destroyed.

@tommartensen tommartensen merged commit ed2d1b8 into master Oct 17, 2025
11 checks passed
@tommartensen tommartensen deleted the tm/implement-workflowtemplate branch October 17, 2025 06:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants